LeakCanary 原理浅析

使用方法

1
2
3
4
5
6
7
8
9
10
11
在Application里初始化
this.mRefWatcher = BuildConfig.DEBUG ? LeakCanary.install(this) : RefWatcher.DISABLED;

fragment的onDestroy

@Override
public void onDestroy() {
super.onDestroy();
RefWatcher refWatcher = App.getMyApplicationContext().getRefWatcher();
refWatcher.watch(this);
}

简述:install的时候为application注册Application.ActivityLifecycleCallbacks,然后在onActivityDestroyed为当前activity添加弱引用,手动触发gc,收集日志然后报警与否。

LeakCanary 原理浅析

LeakCanary原理浅析 详细

-------------The End-------------